//问题描述：利用字母可以组成一些美丽的图形，下面给出了一个例子：
//ABCDEFG  
//BABCDEF
//CBABCDE
//DCBABCD
//EDCBABC
//这是一个5行7列的图形，请找出这个图形的规律，并输出一个n行m列的图形。
//输入格式：输入一行，包含两个整数n和m，分别表示你要输出的图形的行数的列数。
//输出格式：输出n行，每个m个字符，为你的图形。
//样例输入：5 7
//样例输出： 
//ABCDEFG
//BABCDEF
//CBABCDE
//DCBABCD
//EDCBABC
//数据规模与约定：1 <= n, m <= 26。
// 0123456
//0ABCDEFG   A 00 11 22 33 44 绝对值0  0-0=0 1-1=0
//1BABCDEF   B 01 10 12 21 23 绝对值1 
//2CBABCDE   C 02 13 20       绝对值2  
//3DCBABCD
//4EDCBABC
#include <iostream>
using namespace std;

int main()
{
	int n,m;
	cin >> n >> m;
	int a[n][m];
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<m;j++)
		{
			if(i-j == 0 || j-i==0)
			{
				cout <<"A";
			}
			else if(i-j == 1 || j-i==1)
			{
				cout <<"B";
			}
			else if(i-j == 2 || j-i==2)
			{
				cout <<"C";
			}
			else if(i-j == 3 || j-i==3)
			{
				cout <<"D";
			}
			else if(i-j == 4 || j-i==4)
			{
				cout <<"E";
			}
			else if(i-j == 5 || j-i==5)
			{
				cout <<"F";
			}
			else if(i-j == 6 || j-i==6)
			{
				cout <<"G";
			}
			else if(i-j == 7 || j-i==7)
			{
				cout <<"H";
			}
			else if(i-j == 8 || j-i==8)
			{
				cout <<"I";
			}
			else if(i-j == 9 || j-i==9)
			{
				cout <<"J";
			}
			else if(i-j == 10 || j-i==10)
			{
				cout <<"K";
			}
			else if(i-j == 11 || j-i==11)
			{
				cout <<"L";
			}
			else if(i-j == 12 || j-i==12)
			{
				cout <<"M";
			}
			else if(i-j == 13 || j-i==13)
			{
				cout <<"N";
			}
			else if(i-j == 14 || j-i==14)
			{
				cout <<"O";
			}
			else if(i-j == 15 || j-i==15)
			{
				cout <<"P";
			}
			else if(i-j == 16 || j-i==16)
			{
				cout <<"Q";
			}
			else if(i-j == 17 || j-i==17)
			{
				cout <<"R";
			}
			else if(i-j == 18 || j-i==18)
			{
				cout <<"S";
			}
			else if(i-j == 19 || j-i==19)
			{
				cout <<"T";
			}
			else if(i-j == 20 || j-i==20)
			{
				cout <<"U";
			}
			else if(i-j == 21 || j-i==21)
			{
				cout <<"V";
			}
			else if(i-j == 22 || j-i==22)
			{
				cout <<"W";
			}
			else if(i-j == 23 || j-i==23)
			{
				cout <<"X";
			}
			else if(i-j == 24 || j-i==24)
			{
				cout <<"Y";
			}
			else if(i-j == 25 || j-i==25)
			{
				cout <<"Z";
			}
		}
		cout <<endl;
	}
	return 0;
}
//简化版 ：
//int main()
//{
//	int n, m;
//	cin >> n >> m;
//	int a[n][m];
//	for (int i = 0; i < n; i++)
//	{
//		for (int j = 0; j < m; j++)
//		{
//			cout << abs(i-j)+65;  //0+65的ASCLL码为1A，同理类推
//		}
//		cout << endl;
//	}
//	return 0;